﻿
using System;
using System.Runtime.Serialization;
using V82;
using V82.Перечисления;//Ссылка;
namespace V82.Перечисления//Ссылка
{
	[DataContract]
	public enum ВидыОперацийСертификацияНоменклатуры
	{
		[NonSerialized]
		ПустаяСсылка = - 1,
		[EnumMember(Value = "{\"Ссылка\":\"5ceb7378-833c-4236-ad0d-011c732ae71d\", \"Представление\":\"Внутренняя\"}")]
		Внутренняя = 0,
		[EnumMember(Value = "{\"Ссылка\":\"82513fe7-fd1a-43b1-a396-4a140c2a2f61\", \"Представление\":\"Внешняя\"}")]
		Внешняя = 1,
	}
	public static partial class ВидыОперацийСертификацияНоменклатуры_Значения//:ПеречислениеСсылка
	{
		public static readonly Guid Внутренняя = new Guid("1c010dad-2a73-1de7-4236-833c5ceb7378");
		public static readonly Guid Внешняя = new Guid("144a96a3-2a0c-612f-43b1-fd1a82513fe7");
		public static ВидыОперацийСертификацияНоменклатуры Получить(this ВидыОперацийСертификацияНоменклатуры Значение, byte[] Ссылка)
		{
			return Получить(Значение, new Guid(Ссылка));
		}
		public static ВидыОперацийСертификацияНоменклатуры Получить(this ВидыОперацийСертификацияНоменклатуры Значение, Guid Ссылка)
		{
			if(Ссылка == Внутренняя)
			{
				return ВидыОперацийСертификацияНоменклатуры.Внутренняя;
			}
			else if(Ссылка == Внешняя)
			{
				return ВидыОперацийСертификацияНоменклатуры.Внешняя;
			}
			return ВидыОперацийСертификацияНоменклатуры.ПустаяСсылка;
		}
		public static byte[] Ключ(this ВидыОперацийСертификацияНоменклатуры Значение)
		{
			return Ссылка(Значение).ToByteArray();
		}
		public static Guid Ссылка(this ВидыОперацийСертификацияНоменклатуры Значение)
		{
			switch (Значение)
			{
				case ВидыОперацийСертификацияНоменклатуры.Внутренняя: return Внутренняя;
				case ВидыОперацийСертификацияНоменклатуры.Внешняя: return Внешняя;
			}
			return Guid.Empty;
		}
	}
}